.. _cmmStSetCount: cmmStSetCount ======================== ------------------------ SYNOPSIS ``````````` .. code-block:: none VT_I4 cmmStSetCount( [in] VT_I4 Axis, [in] VT_I4 Target, [in] VT_I4 Count ) DESCRIPTION ``````````````` - 지정한 채널의 지정한 카운터의 값을 새로이 설정합니다. 단, 이때 지정하는 카운터값의 단위는 펄스수입니다. 이 함수는 카운터의 값을 지정하는 매개 변수의 단위가 펄스수라는 것을 제외하고는 cmmStSetPosition() 함수와 동일합니다. PARAMETER ``````````` - Axis: 축번호. 축번호는 상수값으로 [cmX1] 부터 0 번째 축을 기준 축으로 임의의 축을 설정할 수 있습니다. \ - Target : 설정할 카운터 번호. 이 값은 다음의 4 가지 값중의 하나이어야 합니다. .. csv-table:: :widths: 10 85 :header-rows: 1 :stub-columns: 0 Value, Meaning 0 또는 cmCNT_COMM, Command Counter 1 또는 cmCNT_FEED, Feedback Counter 2 또는 cmCNT_DEV, Deviation Counter: Command 와 Feedback counter 의 편차 카운터 3 또는 cmCNT_GEN, General Counter: 사용자의 정의에 따라 여러가지 용도로 사용될 수 있는 카운터 \ - Count : 지정한 값으로 대상 카운터의 값을 설정합니다. 이 값은 이 값은 논리단위가 아닌 실제 펄스 카운트값입니다. RETURN VALUE ````````````` .. csv-table:: :widths: 10 85 :header-rows: 1 :stub-columns: 0 Value, Meaning 음수, 수행 실패 cmERR_NONE, 수행 성공 EXAMPLE ``````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 C/C++ #include “Cmmsdk.h” #include “CmmsdkDef.h” void OnSetCount () { long nCommCount; // Command Count long nFeedCount; // Feedback Count /* Command, Feedback 카운트 값을 확인한 후, ‘0’ 으로 초기화 합니다. */ if (cmmStGetCount (cmX1, cmCNT_COMM, &nCommCount ) == cmERR_NONE ) { if ( nCommCount != 0 ) { // Command 카운트를 0 으로 설정합니다. cmmStSetCount (cmX1, cmCNT_COMM, 0 ); } } if (cmmStGetCount (cmX1, cmCNT_FEED, &nFeedCount ) == cmERR_NONE ) { if ( nFeedCount != 0 ) { // Feedback 카운트를 0 으로 설정합니다. cmmStSetCount (cmX1, cmCNT_FEED, 0 ); } } } .. code-block:: none :linenos: Visual Basic Private Sub OnSetCount () Dim nCommCount As Long ‘ Command Count Dim nFeedCount As Long ‘ Feedback Count ‘ Command, Feedback 카운트 값을 확인한 후, ‘0’ 으로 초기화 합니다. If cmmStGetCount (cmX1, cmCNT_COMM, nCommCount ) = cmERR_NONE Then If nCommCount <> 0 Then ‘ Command 카운트를 0 으로 설정합니다. Call cmmStSetCount (cmX1, cmCNT_COMM, 0 ) End If End If If cmmStGetCount (cmX1, cmCNT_FEED, nFeedCount ) = cmERR_NONE Then If nFeedCount <> 0 Then ‘ Feedback 카운트를 0 으로 설정합니다. Call cmmStSetCount (cmX1, cmCNT_FEED, 0 ) End If End If End Sub .. code-block:: none :linenos: Delphi procedure OnSetCount (); var nCommCount : LongInt; // Command Count nFeedCount : LongInt; // Feedback Count begin // Command, Feedback 카운트 값을 확인한 후, ‘0’ 으로 초기화 합니다. if cmmStGetCount (cmX1, cmCNT_COMM, @nCommCount ) = cmERR_NONE then begin if nCommCount <> 0 then begin // Command 카운트를 0 으로 설정합니다. cmmStSetCount (cmX1, cmCNT_COMM, 0 ); end; end; if cmmStGetCount (cmX1, cmCNT_FEED, @nFeedCount ) = cmERR_NONE then begin if nFeedCount <> 0 then begin // Feedback 카운트를 0 으로 설정합니다. cmmStSetCount (cmX1, cmCNT_FEED, 0 ); end; end; end; .. seealso:: :ref:`cmmStGetCount`